From 50a766c95ffe421269d618dd753d505c8de8e575 Mon Sep 17 00:00:00 2001 From: Kristian Rietveld Date: Fri, 9 Nov 2007 22:44:31 +0000 Subject: [PATCH] guard for windows with GDK_WINDOW_DESTROYED set. (Fixes #482531, reported 2007-11-09 Kristian Rietveld * gdk/gdkwindow.c (gdk_window_process_all_updates): guard for windows with GDK_WINDOW_DESTROYED set. (Fixes #482531, reported by Sebastien Bacher). svn path=/trunk/; revision=18975 --- ChangeLog | 6 ++++++ gdk/gdkwindow.c | 15 +++++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 46d2c82f75..54b3cf3ac6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-11-09 Kristian Rietveld + + * gdk/gdkwindow.c (gdk_window_process_all_updates): guard for + windows with GDK_WINDOW_DESTROYED set. (Fixes #482531, reported + by Sebastien Bacher). + 2007-11-09 Matthias Clasen * gtk/gtkmain.c: diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index fe4e7f674a..6e57fe6467 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -2435,12 +2435,15 @@ gdk_window_process_all_updates (void) { GdkWindowObject *private = (GdkWindowObject *)tmp_list->data; - if (private->update_freeze_count || - gdk_window_is_toplevel_frozen (tmp_list->data)) - update_windows = g_slist_prepend (update_windows, private); - else - gdk_window_process_updates_internal (tmp_list->data); - + if (!GDK_WINDOW_DESTROYED (tmp_list->data)) + { + if (private->update_freeze_count || + gdk_window_is_toplevel_frozen (tmp_list->data)) + update_windows = g_slist_prepend (update_windows, private); + else + gdk_window_process_updates_internal (tmp_list->data); + } + g_object_unref (tmp_list->data); tmp_list = tmp_list->next; } -- 2.30.2